Skip to content

Conversation

@kyleconroy
Copy link
Collaborator

Add HasSettings and ExplicitType fields to ExplainQuery AST to properly
handle EXPLAIN statements with settings (e.g., explain header = 1) and
to correctly distinguish when the EXPLAIN type was explicitly specified.

  • When EXPLAIN has settings like header = 1, output includes a Set child
  • When EXPLAIN type is not explicitly specified, omit type from output
    (e.g., Explain EXPLAIN instead of Explain EXPLAIN PLAN)

This enables 61 previously failing explain tests to pass, including the
target test 01508_explain_header.

Add HasSettings and ExplicitType fields to ExplainQuery AST to properly
handle EXPLAIN statements with settings (e.g., `explain header = 1`) and
to correctly distinguish when the EXPLAIN type was explicitly specified.

- When EXPLAIN has settings like `header = 1`, output includes a Set child
- When EXPLAIN type is not explicitly specified, omit type from output
  (e.g., `Explain EXPLAIN` instead of `Explain EXPLAIN PLAN`)

This enables 61 previously failing explain tests to pass, including the
target test 01508_explain_header.
Format metadata.json files with proper indentation when updating
explain_todo entries, improving readability.
@kyleconroy kyleconroy merged commit d875f47 into main Dec 28, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants